Verbal interfaces and other non-visual interfaces allow users to control devices and systems without taking their eyes or their hands away from other activities. However, a concern in deploying non-visual interfaces is the lack of discoverability of the functions or options available to the user. A textual or other visual user interface may be configured to display one or more menus that show at a glance the options available to the user. A visual interface may also present help information if the user is not familiar with how to use the interface. By contrast, a verbal interface cannot simultaneously present multiple options and/or information in parallel. Instead, verbal interfaces present options serially by playing a recording of the options or otherwise reading the options to the user.
Serially presenting lists of options and other information may be time consuming. Having to present a long list of options may be avoided by separating the list into a hierarchy of shorter lists. Related options may be subdivided into shorter sub-menus accessible through a master menu that lists the groups of options available through the sub-menus. However, in a verbal interface supporting many functions, a user still may have to listen to long lists of options and/or navigate through several menus to secure information about a desired option. The time involved in working with such list may even trouble a beginning user who might need and appreciate the information provided. On the other hand, experience users may be frustrated with the tedium in having to engage one or more menus to initiate a desired function.
Generally, there is no way for the system to infer the user's skill level, if the user is asked to self-identify his or her familiarity level with the system and underestimates or overestimates his or her skill level, the user may become very frustrated in being given too much prompting or become confused upon receiving too little assistance, respectively. In addition, if a user has a higher familiarity with one aspect of the system but little or no experience with another aspect of the system, the level of prompting appropriate for the user with the first part of the system may leave the user utterly lost in another part of the system. Further, a user who has past familiarity with the system but needs to refresh his or her recollection of the system may only desire some minor prompting or assistance. If such a user selects to receive novice-level prompting, the user might receive too much information and lose too much time, and the user may not be able to or know how to scale back to less detailed prompting during the current session or the next session.
One way to avoid the potential problem of providing too much or too little information is to provide a selectable help option. With a help option available, minimal prompting may be provided. Thus, a user who does not need assistance need not invoke the help option; on the other hand, a less-experienced user who needs more assistance than the minimal amount provided can request more help. Unfortunately, providing a help option does not resolve all possible problems. For example, an experienced user might need just a little help in being reminded of the possible options available at some point, and being presented with a detailed set of explanations from a help system may be more than the user wants. Conversely, a novice user may not know or remember how to invoke a help option, thus, while help might be available, a novice may not be able to access it.